perm filename LOOKZ.FAI[MUS,LCS] blob sn#171830 filedate 1975-08-06 generic text, type T, neo UTF8
00100		TITLE LOOKX ; ********* JUN 8,74 *********
00200	;;	INTERNAL GETFI2,FASTI2,LOOP
00300		INTERNAL LOOK,LOOKD,LOOKF
00400	
00500	
00600		CH3←15	;WAS ←13  4/18/75 *******
00700	
00800	DEFINE ERROR (MSG)
00900	<	JSA 16,.ERROR
01000		JUMP [ASCIZ/MSG/
01100	]
01200	>
01300	
01600	
01700	LKUP:	0
01800		SETZM DIR+2
01900		SETZM DIR+3
02000		LOOKUP CH3,DIR
02100		JRA 16,0(16)
02200		JRA 16,1(16)
02300	
02400	INTFIZ:	0	;INITS DSK FOR INPUT
02500		MOVEI REGS
02600		BLT REGS+3
02700		INIT CH3,17
02800		SIXBIT/DSK/
02900		0
03000		ERROR <CAN'T INIT DSK!>
03100		JRST INTF4
03200	
03300	
03400	
03500	COM:	OCT 0,0
03600	BLKNUM:	0
03700	
03800	.ERROR:	0
03900		OUTSTR [ASCIZ/?
04000	/]				;MAKE SURE HE CAN SEE HIS ERROR
04100		OUTSTR @(16)		;OUTPUT ERROR MESSAGE
04200		CALLI 1,12		;LET USER CONTI2UE
04300		JRA 16,1(16)
04400	
04500		CH←13
04600	
04700	REGS:	BLOCK 20
04800	
04900	;LOOK(<FILE>) FOR NO EXT., LOOKD() FOR .DAT, LOOKF() FOR .DMD
05000	
05100	LOOKF:	0
05200		MOVSI 0,'DMD'
05300		JRST LOOK1
05400	LOOKD:	0
05500		MOVSI 0,'DAT'
05600		JRST LOOK1
05700	LOOK:	0
05800		MOVEI	0,0
05900	LOOK1:	MOVEM	0,DIR+1
06000		MOVE	0,@(16)
06100		MOVEM 	0,FILNAM
06200		JSA 16, INTFIQ
06300		SETZM	DIR+2
06400		SETZM	DIR+3
06500		LOOKUP	CH,DIR
06600		TDZA	0,0
06700		MOVNI	0,1
06800		JRA 16,1(16)
06900	
07000	INTFIQ:	0	;INITS DSK FOR INPUT
07100		MOVEI REGS
07200		BLT REGS+3
07300		INIT CH,17
07400		SIXBIT/DSK/
07500		0
07600		HALT .-3
07700	;	ERROR <CAN'T INIT DSK!>
07800	
07900	INTF4:	MOVE 0,FILNAM#
08000		MOVEM 0,FN#
08100		MOVE 1,[POINT 7,FN]
08200	INTF3:	MOVE 2,[POINT 6,DIR]
08300		SETZM DIR
08400		MOVEI 3,5
08500	INTF1:	ILDB 0,1
08600		CAIN 0," "
08700		JRST INTF2
08800		SUBI 0,40
08900		IDPB 0,2
09000		SOJG 3,INTF1
09100	INTF2:	HRLZI REGS
09200		BLT 3
09300		JRA 16,0(16)
09400	
09500	DIR:	BLOCK 4
09600	
09700	
09800	
09900		END